《编译原理

您所在的位置:网站首页 编译 龙书 《编译原理

《编译原理

2023-09-16 01:08| 来源: 网络整理| 查看: 265

这一章重要的是2个概念: SDD:语法制导定义,由一个上下文无关文法和属性及规则组成 SDT:语法制导翻译,是在其产生式体内嵌入了程序片段的一个上下文无关文法 5.1 语法制导定义 图5.5中计算过程比较复杂,看完5.2节求值顺序就会理解更多

5.1.1比较简单,就是自底向上语法树中加上 .val就行

5.1.2 

5.2 SDD的求值顺序

5.2.1 保证下表中从左到右排就行

1->3->5   2->4 4,5->6 6->7 7->8 8->9

5.2.2 依赖图比注释语法分析树增加了依赖关系

本题中的注释语法分析树完全类似图5-9

5.2.3 A->BCD

  S属性 L属性 求值顺序是否影响规则(中文书中翻译有问题) A.s=B.i+C.s no(有继承属性) yes   A.s=B.i+C.s D.i=A.i+B.s no yes   A.s=B.s+D.s yes yes   A.s=D.i B.i=A.s+C.s C.i=B.s D.i=B.i+C.i no no  

5.2.4

S->L1.L2      L1.side = left L2.side=right S.value=L1.value+L2.value

S->L              L1.side = left S.value=L.value

L->L1B         L1.side=L.side if(L.side==left) L.value=L1.value*2+B.value else L.value=L1.value+B/2^(length(L1))

L->B              if(L.side==left) L.value=B.value else L.value=B.value/2

B->0              B.value = 0

B->1              B.value = 1

5.2.5

S->LEFT.RIGHT | LEFT

LEFT->



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3